package mysql8学习.初级.第14章_视图_View;

/**
 * 对视图虚拟内容进行增删改
 *
 *          修改时  原表也会进行修改
 *          删除时  原表也会进行删除
 *          增加时  原表也会进行增加
 * 但这些变化
 * 都必须在原表有，也不能在聚合函数情况下进行增删改
 * 并且必须表中的可以修改
 * 要使视图可更新，视图中的行和底层基本表中的行之间必须存在`一对一`的关系。
 * 另外当视图定义出现如下情况时，视图不支持更新操作：
 * - 在定义视图的时候指定了“ALGORITHM = TEMPTABLE”，视图将不支持INSERT和DELETE操作；
 * - 视图中不包含基表中所有被定义为非空又未指定默认值的列，视图将不支持INSERT操作；
 * - 在定义视图的SELECT语句中使用了`JOIN联合查询`，视图将不支持INSERT和DELETE操作；
 * - 在定义视图的SELECT语句后的字段列表中使用了`数学表达式`或`子查询`，
 *      视图将不支持INSERT，也不支持UPDATE使用了数学表达式、子查询的字段值；
 * - 在定义视图的SELECT语句后的字段列表中使用
 *      `DISTINCT`、`聚合函数`、`GROUP BY`、`HAVING`、`UNION`等，
 *      视图将不支持INSERT、UPDATE、DELETE；
 * - 在定义视图的SELECT语句中包含了子查询，而子查询中引用了FROM后面的表，
 *      视图将不支持INSERT、UPDATE、DELETE；
 * - 视图定义基于一个`不可更新视图`；
 * - 常量视图。
 */
public class E_视图数据进行操作 {
}
